
**********************************************************************************************************************************
*How public opinion information changes politicians' opinions and behavior

*Julie Sevenans
*Accepted for publication in Political Behavior (March 2, 2021)
**********************************************************************************************************************************

***DATA PREPARATION

*Create dummy for parliamentary vote (3 respondents who "would not take part in vote" are put to missing")
gen vote_dummy = vote
recode vote_dummy (1=0) (2=1) (3=.)

*Create variable for parliamentary authority
gen parliament_authority = 0
replace parliament_authority = 1 if (V5==1 &  V4>2) | (V5==2 & V4 < 4) //(Groen & sp.a statements are federal; CD&V is both; VLD, NVA & VB are regional)

*Create party dummies
forvalues x = 1(1)6 {
	gen party`x'=1 if V4==`x'
	replace party`x' = 0 if V4!=`x'
}


***METHODS SECTION

*Descriptive information in text
sum ownopinion
sum internal
tab vote


*Figure 2: Manipulation check
histogram voteropinion if conditie_info==1, freq ///
	title ("Recall in treatment group") ///
	ylabel (0(20)60, labsize(large)) ///
	ytitle ("Frequency", size(large)) ///
	xlabel (10(10)100, labsize(large)) ///
	xtitle ("Percentage of voters who agree with policy proposal", size(large))

histogram voteropinion if conditie_info==0, freq ///
	title ("Estimations in control group") ///
	ylabel (0(20)60, labsize(large)) ///
	ytitle ("Frequency", size(large)) ///
	xlabel (10(10)100, labsize(large)) ///
	xtitle ("Percentage of voters who agree with policy proposal", size(large))


*Figure 3: Realism check
tab realisticness
histogram realisticness, discrete freq  ///
	barw(1)  ///
	title ("Realisticness of the scenario questions") ///
	ylabel (0(20)60, labsize(medlarge)) ///
	ytitle ("Frequency", size(medlarge)) ///
	xlabel (1(1)7, valuelabel labsize(medsmall) alternate) ///
	xtitle ("", size(small))


*Table 2: Estimation of party position
tab V4, sum(partyposition)
tab V4, sum(attention)


*Footnote 5
ttest partyposition, by(conditie_info)


***RESULTS SECTION

*Figure 4a 
reg ownopinion i.V4 partyposition i.conditie_info 
margins, at(conditie_info=(0 1)) atmeans
marginsplot,   ///
	title ("Predictions of politicians' own opinion") ///
	ylabel (0(2)10, labsize(medlarge)) ///
	ytitle ("Prediction of own opinion on scale from 0 to 10", size(medlarge)) ///
	xscale(r(-.5 1.5)) ///
	xlabel (0 1, valuelabel labsize(medlarge)) ///
	xtitle ("Public opinion information", size(medlarge)) ///
	plotopts(connect(none))


*Figure 4b
gen inter_cond_partypos = conditie_info * partyposition

reg ownopinion conditie_info partyposition inter_cond_partypos i.V4

gen MV= ((_n-1)/1) 
replace  MV=. if _n>11

matrix b=e(b)
matrix V=e(V)
 
scalar b1=b[1,1]
scalar b2=b[1,2]
scalar b3=b[1,3]

scalar varb1=V[1,1]
scalar varb2=V[2,2]
scalar varb3=V[3,3]

scalar covb1b3=V[1,3]
scalar covb2b3=V[2,3]

scalar list b1 b2 b3 varb1 varb2 varb3 covb1b3 covb2b3

gen conb=b1+b3*MV if _n<12
gen conse=sqrt(varb1+varb3*(MV^2)+2*covb1b3*MV) if _n<12
gen a=1.96*conse
gen upper=conb+a
gen lower=conb-a

graph twoway line conb   MV, clwidth(medium) clcolor(blue) clcolor(black) ||   	///
	line upper  MV, clpattern(dash) clwidth(thin) clcolor(black)||   			///
	line lower  MV, clpattern(dash) clwidth(thin) clcolor(black)				

drop inter_cond_partypos MV conb conse a upper lower


*Figure 5
reg internal i.V4 partyposition i.conditie_info 
margins, at(conditie_info=(0 1)) atmeans
marginsplot,   ///
	title ("Predictions of the politicians' internal party behavior") ///
	ylabel (-3(1)3, labsize(medlarge)) ///
	ytitle ("Prediction of position on scale from -3 to 3", size(medlarge)) ///
	xscale(r(-.5 1.5)) ///
	xlabel (0 1, valuelabel labsize(medlarge)) ///
	xtitle ("Public opinion information", size(medlarge)) ///
	plotopts(connect(none))

logit vote_dummy i.V4 partyposition i.conditie_info 
margins, at(conditie_info=(0 1)) atmeans
marginsplot,   ///
	title ("Predictions of politicians' voting behavior") ///
	ylabel (0(.2)1, labsize(medlarge)) ///
	ytitle ("Predicted probability of voting in favor", size(medlarge)) ///
	xscale(r(-.5 1.5)) ///
	xlabel (0 1, valuelabel labsize(medlarge)) ///
	xtitle ("Public opinion information", size(medlarge)) ///
	plotopts(connect(none))


*In text: mediation
reg internal i.V4 partyposition i.conditie_info ownopinion
medeff (regress ownopinion conditie_info partyposition party2 party3 party4 party5 party6) (regress internal conditie_info ownopinion partyposition party2 party3 party4 party5 party6), mediate(ownopinion) treat(conditie_info)

logit vote_dummy i.V4 partyposition i.conditie_info ownopinion
medeff (regress ownopinion conditie_info partyposition party2 party3 party4 party5 party6) (logit vote_dummy conditie_info ownopinion partyposition party2 party3 party4 party5 party6), mediate(ownopinion) treat(conditie_info)


***ONLINE APPENDIX

*Online Appendix 2: Balance test

//Due to confidentiality issues, the respondents' sex, year of birth and year of first election are not in the replication dataset.
//In case of questions, contact the author.

//logit conditie_info i.V4 sex yob yofe i.V5 partyposition


*Online Appendix 3
*Model 1
reg ownopinion i.V4 partyposition i.conditie_info 
*Model 2
reg ownopinion i.V4 c.partyposition##i.conditie_info 


*Online Appendix 4
*Model 3
reg internal i.V4 partyposition i.conditie_info
*Model 4
reg internal i.V4 partyposition i.conditie_info i.conditie_info#c.partyposition
*Model 5
logit vote_dummy i.V4 partyposition i.conditie_info
*Model 6
logit vote_dummy i.V4 partyposition i.conditie_info i.conditie_info#c.partyposition


*Online Appendix 5
*Model 7
reg internal i.V4 partyposition i.conditie_info ownopinion
*Model 8
logit vote_dummy i.V4 partyposition i.conditie_info ownopinion


*Online Appendix 6: Realism of stimuli
reg ownopinion i.V4 realisticness partyposition i.conditie_info
reg ownopinion i.V4 realisticness partyposition i.conditie_info i.conditie_info#c.realisticness

reg internal i.V4 realisticness partyposition i.conditie_info
reg internal i.V4 realisticness partyposition i.conditie_info i.conditie_info#c.realisticness

logit vote_dummy i.V4 realisticness partyposition i.conditie_info
logit vote_dummy i.V4 realisticness partyposition i.conditie_info i.conditie_info#c.realisticness


*Online Appendix 7: Perceived salience
reg ownopinion i.V4 attention partyposition i.conditie_info
reg ownopinion i.V4 attention partyposition i.conditie_info i.conditie_info#c.attention

reg internal i.V4 attention partyposition i.conditie_info
reg internal i.V4 attention partyposition i.conditie_info i.conditie_info#c.attention

logit vote_dummy i.V4 attention partyposition i.conditie_info
logit vote_dummy i.V4 attention partyposition i.conditie_info i.conditie_info#c.attention


*Online Appendix 8: Party robustness
forvalues x = 1 (1) 6 {
*	reg ownopinion i.V4 partyposition i.conditie_info if V4!=`x'
	reg ownopinion party2 party3 party4 party5 party6 partyposition i.conditie_info i.party`x'#i1.conditie_info
*	reg internal i.V4 partyposition i.conditie_info if V4!=`x'
	reg internal party2 party3 party4 party5 party6 partyposition i.conditie_info i.party`x'#i1.conditie_info
*	logit vote_dummy i.V4 partyposition i.conditie_info if V4!=`x'
	logit vote_dummy party2 party3 party4 party5 party6 partyposition i.conditie_info i.party`x'#i1.conditie_info
	}


*Online Appendix 9: Desirability of delegate behavior
histogram Q7 , discrete freq ///
	barw(1)  ///
	title ("Desirability of delegate behavior") ///
	ylabel (0(10)40, labsize(large)) ///
	ytitle ("Frequency", size(large)) ///
	xlabel (0(1)10, labsize(large)) ///
	xtitle ("Politicians' preference on delegate (0) - trustee (10) balance", size(med))


*Online Appendix 10: Parliamentary competence
reg ownopinion i.V4 i.parliament_authority partyposition i.conditie_info
reg ownopinion i.V4 i.parliament_authority partyposition i.conditie_info i.conditie_info#i.parliament_authority

reg internal i.V4 i.parliament_authority partyposition i.conditie_info
reg internal i.V4 i.parliament_authority partyposition i.conditie_info i.conditie_info#i.parliament_authority

logit vote_dummy i.V4 i.parliament_authority partyposition i.conditie_info 
logit vote_dummy i.V4 i.parliament_authority partyposition i.conditie_info i.conditie_info#i.parliament_authority


**********************************************************************************************************************************

